/* This is a generated file. Don't edit. Edit the source instead.
 */

#ifndef _hc_cmd_h_
#define _hc_cmd_h_

#include <inttypes.h>
#include "sys_queue.h"
#include <sys/time.h>
#include <sys/types.h>
#include <event.h>
#include "tigertree.h"

typedef struct hc hc_t;
struct hc
{
    LIST_ENTRY(hc) link;
    struct event in_event;
    int fd;
    int current_fd;
    TAILQ_HEAD(, hash_entry) hash_queue_head;
    struct bufferevent *bufev;
    struct hash_entry *current_entry;
    struct tt_context tth;

    int (*cb_set_delay)(hc_t *hc, unsigned int delay);
    int (*cb_add)(hc_t *hc, const char *filename);
    int (*cb_abort)(hc_t *hc);
    int (*cb_shutdown)(hc_t *hc);
};

hc_t *hc_init(void);

int hc_dispatch_command(const char *line, const char *delimiters,
        int allow_null_elements, hc_t *hc);
#endif
